使用VVV进行WordPress开发

您所在的位置:网站首页 vvv 7是什么车 使用VVV进行WordPress开发

使用VVV进行WordPress开发

2024-02-17 18:35| 来源: 网络整理| 查看: 265

Japh 在上一篇文章中已经解释了基本原理,并最终说服了我们使用Vagrant将我们的开发环境设置为与远程Web服务器接近。 这篇文章已有两年多的历史了,但是今天这个想法仍然有用。 更重要的是,Vagrant最近以一种名为VVV的特殊Vagrant配置在WordPress社区中获得了关注,该配置是Varying Vagrant Vagrants的缩写。

VVV是Vagrant配置的预设,适用于以WordPress为中心的项目,例如开发主题,插件或为WordPress Core做出贡献 。 VVV还包含了一些工具,例如WP-CLI , PHP Code Sniffer和Composer ,这些工具可以增强我们的开发工作流程。

尽管如此,使用MAMP,WAMP或XAMPP之类的应用程序已经为许多开发人员提供了足够的便利。 这些工具可能为他们提供了很好的服务,因此似乎没有必要迁移到VVV。

因此,本教程针对那些长期使用这些传统堆栈应用程序来开发WordPress的用户,并且现在觉得该应用程序不再能应对您更广泛,更复杂的项目。

也许您读过有关Vagrant被称为绝佳选择的某个地方,但您不知道从何开始,以及Vagrant是否适合您。 因此,在进一步研究之前,我们将概述适合使用VVV的项目开发方案。

让我们开始。

项目简介

首先,我们有一个开发人员团队来帮助我们完成这个项目。 我们的团队遍布全球,每个人都有自己的偏好-有些使用Windows,有些使用OSX。我们采用Vagrant和VVV,以便每个人都拥有相同的环境,并使测试输出更加相关。

我们的项目是创建一个主题和一个插件,然后将它们提交到各自的WordPress.org存储库。

该主题应该与一些流行的插件兼容,例如Jetpack , WooCommerce , EDD和BBPress 。 我们还将针对许多其他插件测试该插件,以确保当它们一起活动时不会发生冲突或错误。

此外,主题和插件还应该与WordPress的最新版本和两个早期版本兼容,并且应该通过Beta版进行测试,以准备将来的WordPress版本。

下表显示了我们的主题和插件应与WordPress版本以及许多插件兼容的位置。

兼容性: Acme-StoreFront(主题) Acme-LocalCurrency(插件) WordPress 4.2 √ ‐ WordPress 4.3 √ ‐ WordPress最新 √ √ WordPress Beta √ √ 喷气背包 √ ‐ BBPress √ ‐ 简易数字下载(EDD) √ √ WooCommerce √ √

此外,我们可能在jetpack.wordpress.dev上有一个本地网站,该网站将托管主题(或插件),这些主题取决于一个或多个Jetpack模块,例如Infinite Scroll和Sharing 。

为了避免受到其他插件的干扰, jetpack.wordpress.dev中的活动插件仅是Jetpack,但一些支持开发的插件(例如Query Monitor , VIP Scanner和Debug Bar)却有些例外。

最终,我们还可以创建woo.wordpress.dev , bbp.wordpress.dev等,以围绕这些插件的功能来构建和测试我们的项目。

您需要安装什么? Git:在本教程中,我们将主要使用Git来克隆存储库。 但是,通常,您应该使用它来跟踪和管理项目更改。 Terminal:我们在本教程中的大部分操作都将在Terminal中完成。 Windows 10用户最终将能够通过命令提示符运行Bash脚本 。 Windows 8或7用户可以使用Bash Git,它是通过Git安装程序Cygwin预安装的。 Cmder可能是一个不错的选择。 Homebrew:对于OSX用户,我强烈建议您安装Homebrew和Homebrew Cask ,这将使本教程中的安装变得轻而易举。 这是我们姐妹网站上的教程,Computer Tuts +, 使用Homebrew和Cask进行完美配置 。

既然我们已经大致了解了要做什么,并且已经安装了这些工具,那么我们现在将继续设置VVV并使其运行。 让我们开始吧!

步骤1:安装VirtualBox

首先,我们需要一个虚拟机(VM)来托管通过Vagrant创建的开发环境。 在本教程中,我们选择VirtualBox ; 它是免费的并且可以跨平台运行。 在“ 下载”页面上,适用于每种平台的安装程序-Windows,OSX和几个Linux发行版 。

VirtualBox下载页面

启动安装程序,并按照步骤进行操作,直至过程结束。 或者,OS X用户可以通过Homebrew Cask安装VirtualBox,这使您可以通过单行命令更方便地安装VirtualBox,如下所示。

brew cask install virtualbox

安装VirtualBox后,可能需要一些时间,我们将继续安装Vagrant。

步骤2:安装Vagrant

同样,Vagrant安装程序可用于OS X,Windows和Linux。 为您的平台下载一个,然后按照步骤进行操作。 OS X用户可以使用以下命令行通过Homebrew Cask安装它。

brew cask install vagrant

安装后,您应该可以访问vagrant CLI。

OSX终端中的Vagrant命令 在OSX终端中检索已安装的Vagrant版本 步骤3:安装Vagrant插件

安装以下无用的插件是可选的,但通常最好安装它们,以简化启动和运行VVV开发环境(包括本地网站)的过程。

Vagrant Hosts Updater :此插件将允许Vagrant更新hosts文件以注册本地网站的域名。 否则,我们将不得不自己添加它,这听起来有点不方便。

运行以下命令以安装插件:

vagrant plugin install vagrant-hostsupdater

Vagrant Triggers :此插件将允许VVV 自动执行许多过程,例如备份数据库。 要安装它,请运行:

vagrant plugin install vagrant-triggers

前提条件-VirtualBox和Vagrant以及插件-已设置。 因此,我们可以开始安装VVV。

步骤4:安装VVV

首先,将VVV从GitHub存储库克隆到本地目录。

git clone git://github.com/Varying-Vagrant-Vagrants/VVV.git

克隆到位后,导航到克隆所在的目录。 然后使用以下命令行启动并运行它:

cd vvv; vagrant up

VVV将下载并安装Ubuntu,作为托管我们本地网站的虚拟操作系统。 在某些时候,您可能还需要输入密码才能让Vagrant写入您的主机文件。

终端正在运行vagrant up命令 VVV首次初始化

请记住,这是我们第一次设置并运行VVV。 该过程将花费很长时间。 可能需要30分钟到一个小时左右才能完成。 在此过程中散步,喝咖啡或休息一下。

当VVV启动并运行时,它为我们提供了一些WordPress默认安装,如下所示:

local.wordpress.dev:WordPress的最新稳定版本。 local.wordpress-trunk.dev :这是WordPress每晚发布的版本,其中包含粗糙的代码。 如果登录到仪表板,则会在页脚中找到与You are using a development version (4.5-RC1-37169)的内容。

使用admin作为用户名和password作为密码登录这些站点。

步骤5:在VVV中添加新的WordPress项目

现在我们已经启动并运行了VVV,我们可以启动新项目了。 我们将创建一个示例主题和插件。 它一直是我的偏好,开始了与主题下划线 ,并使用WPPB一个插件。

我们将这些样板添加到位于{vvv-directory}/www/wordpress-default/wp-content/的local.wordpress.dev的/wp-content/目录中的相应目录中。

在Chrome中查看VVV安装的WordPress本地网站

继续开发主题和插件; 添加一些功能,为主题添加“设置”页面,为主题添加与Customizer的更深入的集成,最后使它们为WordPress下一个版本做好准备。

Envato Tuts +已发布了许多资源,这些资源在开发过程中可能会有用。 以下是一些我的最爱:

在60秒内构建WordPress主题 WordPress Customizer界面快速指南 Tuts +模板标签指南 WordPress分类法初学者指南 创建第一个WordPress小部件的简介 WordPress开发最佳实践提示 使用VV创建新的本地站点

如前所述,我们将创建更多本地网站,在这些网站上我们将开发我们的主题和插件,以便与Jetpack,WooCommerce,EDD和BBPress等多个插件集成。 我们还将设置两个网站,以针对WordPress早期版本(在本例中为4.3和4.2)测试我们的项目。 至此,我们只设置了local.wordpress-trunk.dev ,该主机托管了WordPress每晚,测试版或发布候选(RC)版本。

创建和设置本地网站通常需要执行几个步骤。 首先,我们将必须下载WordPress副本,将其提取并放置在我们本地主机的根目录中,创建一个数据库,运行WordPress安装,并更改hosts文件以注册域名。 如果我们将这个过程用于创建三个或更多本地网站,我们很快就会发现该过程效率低下且耗时。

使用VVV及其扩展名VV ,这是Variable VVV的缩写,我们将能够以更少的精力提高工作效率。 让我们看一下如何部署VV。

安装VV

由于在OS X和Windows中安装VV的过程各不相同,因此本节分为两部分。 您可能会立即跳到当前使用的平台部分。

在OS X中安装VV

在OSX中安装VV的最简单方法是通过Homebrew 。 只需键入以下命令。

brew install bradp/vv/vv 在Windows中安装VV

在Windows中,您首先需要在计算机目录中的某个位置克隆VV存储库。

git clone https://github.com/bradp/vv.git vv

然后,我们需要Windows识别vv命令。

为此,右键单击“我的电脑”或“此PC”,然后选择“ 属性...” 。 然后,转到高级系统设置>环境变量 。 从系统变量列表中选择“路径”,然后单击“ 编辑...” 。

Windows系统路径

添加您之前克隆的vv目录路径。 例如: C:\Users\thoriq\Sites\vv 。

在Windows中编辑系统变量对话框

安装完成后,我们应该可以全局访问vv命令。 该命令将使我们能够设置新的WordPress安装和运行方式,您可以通过vv --help命令找到其详细信息。

在OS X终端中查看的VV命令列表 在OS X中:VV CLI命令列表

在Windows中,可通过命令提示符(cmd.exe)和Bash Git访问CLI。

创建一个新的WordPress网站

VV使安装新的WordPress网站变得很容易,只需键入以下命令:

vv create

一旦执行,它将在配置新网站的过程中提示一些问题,即:

1.命名站点目录

对于MAMP用户,这类似于在/MAMP/htdocs/的MAMP文档根目录中创建一个新文件夹。 这是所有网站资产所在的文件夹。 在此步骤中,输入目录名称,不要包含空格,最好使用小写字母,例如:

OS X终端中的目录名称提示 2.命名域

设置我们新网站的域名。 本地网站的域通常以.dev或.local结尾。 在这种情况下,我将命名为42.wordpress.dev 。 它是一个数字为42的子域,它表示我们将要安装的WordPress版本4.2.x。

命名域 3.设置WordPress版本

在这里,我们将安装WordPress 4.2.8,这是4.2分支中的最后一个迭代。 WordPress版本的完整列表可以在Release Archive页面上找到。

设置WordPress版本 4.启用多站点

它询问我们是否要激活WordPress Multisite模式。 我们选择N

在终端安装时提示为多站点yN

目前,为主题和插件支持WordPress Multisite并不是重中之重。 如果以后需要在多站点环境下构建和测试项目,则可以在新域(例如mu.wordpress.dev下创建另一个站点。

5. WP内容资产

WordPress wp-content目录通常包含许多子目录,例如主题,插件和上载目录。 有时我可能还会创建一些额外的文件夹来存储一些任意文件。 如果您在Git存储库中托管了预设内容,则可以输入URL并让VV克隆存储库。

现在,我们将其留空。

终端Git存储库中的VV提示要克隆,因为wp-content留空以跳过 6.导入SQL

我们没有要导入的SQL数据库,因此我们也将此提示留空。 但是,如果有,请指定SQL文件所在的目录路径,例如: /Sites/db/wp.sql 。

终端Git存储库中的VV提示要克隆,因为wp-content留空以跳过 7.默认主题和插件

WordPress带有默认主题(例如TwentyFifteen,TwentySixteen等)和插件( Akismet和Hello Dolly ),通常我们不会使用它们。 在此步骤中,我们可以将y传递给提示,以告诉VV完全删除它们。

终端中的VV提示删除默认主题和插件 8.虚拟内容

我们可以告诉VV从WPTest安装示例内容。 它是一套广泛的内容,包括帖子,页面和评论。 该内容将有助于发现主题和插件中的任何未对齐,兼容性问题或错误。 因此,键入y 。

终端中的VV提示将示例内容添加到站点 9. WP_DEBUG

我们一定会启用WP_DEBUG,以便WordPress在开发过程中打印任何PHP错误。 因此,在提示符下键入y 。

终端启用中的VV提示WP_DEBUG和WP_DEBUG_LOG 10.确认

最后,在VV继续安装之前,请确认所有定义的配置均正确。 如果一切正常,请键入y继续。 否则,请键入n以中止该操作,并且您可以从头开始重复vv create 。

完成后,VV将显示站点以及登录凭据(用户名和密码),如下所示。

新站点地址及其凭据

重复这些步骤,以在本教程的“项目简介”部分中安装其他上述站点。

组织和同步项目

现在,我们有几个具有不同环境的站点来测试我们的项目(主题或插件)。 我们的站点数量将随着时间的增长而增长,以至于将整个项目目录复制到这些测试环境将是一项不便的事情。

因此,我们需要一个文件夹,可以将项目立即投射到这些网站,最终使我们的工作流程更有条理。

驱动器映射简介

Vagrant允许我们将目录同步到虚拟机。 实际上,Vagrant在引擎盖下部署了自己的功能。 如果我们在“驱动器映射”部分下查看Vagrantfile ,我们会发现它同步了许多目录,包括所有站点安装所在的www/ 。

定义www文件夹的Vagrantfile源代码映射到虚拟机 映射自定义目录

首先,我们首先需要创建两个目录,分别托管我们的插件和主题。 您可以将这些目录放置在计算机上的任何位置。 就我而言,我有一个名为dev的目录,其中包含我的所有项目,如下所示。

. └── dev └── library ├── plugins └── themes

然后,我们将注册这些目录的映射。 我们在local.wordpress.dev和local.wordpress-trunk.dev安装了三个WordPress网站。 因此,这些目录将被映射,指向并同步到虚拟机中这些站点的每个/plugins/和/themes/目录。

但是,应始终避免修改默认系统文件。 因此,我们无需修改Vagrantfile ,而是将映射配置添加到名为Customfile的文件中-在Vagrantfile第241行处,我们发现它已加载以应用custom或覆盖默认配置。

Customfile的Vagrantfile源代码

创建Customfile在同一个位置的文件Vagrantfile 。

. └── vvv └── Vagrantfile ├── Customfile

在文件中添加以下代码行,我相信它们很容易解释。

##Plugins config.vm.synced_folder "/Users/thoriq/Sites/dev/plugins/", "/srv/www/wordpress-default/wp-content/plugins", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ] config.vm.synced_folder "/Users/thoriq/Sites/dev/plugins/", "/srv/www/wordpress-develop/wp-content/plugins", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ] config.vm.synced_folder "/Users/thoriq/Sites/dev/plugins/", "/srv/www/wordpress-42/htdocs/wp-content/plugins", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ] ##Themes config.vm.synced_folder "/Users/thoriq/Sites/dev/themes/", "/srv/www/wordpress-default/wp-content/themes", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ] config.vm.synced_folder "/Users/thoriq/Sites/dev/themes/", "/srv/www/wordpress-trunk/wp-content/themes", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ] config.vm.synced_folder "/Users/thoriq/Sites/dev/themes/", "/srv/www/wordpress-42/htdocs/wp-content/themes", :owner => "www-data", :mount_options => [ "dmode=775", "fmode=774" ]

通过运行vagrant reload重新加载Vagrant,否则vagrant up如果当前未运行,请vagrant reload vagrant up 。 /dev/plugins/和/dev/themes/ /dev/plugins/和/dev/themes/现在应该在所有站点中列出。

网站中的插件列表 添加GUI层

至此,我们已经设置并运行了Vagrant和VVV。 现在,我们能够在几分钟之内创建一个新的本地网站,而无需费心下载WordPress .zip软件包,提取该软件包以及编辑主机文件条目。

到目前为止,我们的大多数操作都是通过命令行界面完成的。 可以理解,这对于初学者来说可能有些吓人,特别是对于那些来自图形界面应用程序(例如MAMP或WAMP)的用户。 需要时间来适应它。

但是,Vagrant中的某些操作可以用GUI替代。 有一些可用的扩展程序可以为Vagrant和VVV添加漂亮的GUI层,从而使某些操作像单击一样容易。 其中一些包括:

流浪者仪表板

vvv.dev的Vagrant Dashboard可能等同于MAMP的localhost/MAMP/页面,但它以纯白色显示。

VVV默认仪表板外观

幸运的是,我们可以通过扩展使其生动起来。 有几种选择,我将通过topdown选择VVV仪表板 。 要部署扩展,请导航到/www/default/目录并拉出扩展存储库:

git clone https://github.com/topdown/VVV-Dashboard.git dashboard

然后,将/dashboard/dashboard-custom.php复制到/defaults/ ,如下所示。

. ── dashboard ├── dashboard-custom.php (the customized dashboard) ├── database-admin ├── index.php ├── memcached-admin ├── opcache-status ├── phpinfo └── webgrind

无需重新加载流浪汉。 只需在vvv.dev刷新VVV仪表板。 现在,除了列出已安装的站点之外,您还应该在仪表板上找到有关Vagrant配置的许多其他详细信息。

新的VVV仪表板的侧栏 定制的VVV仪表板。 流浪经理

您可以安装的另一个实用程序是Vagrant Manager 。

Vagrant Manager类似于MAMP和WAMP,在这种情况下,它使我们可以单击几下运行,停止和重新加载Vagrant。 Vagrant Manager在OS X中通过Homebrew Cask和.dmg ,在Windows中通过.exe安装程序包提供。 因此,安装该应用程序应该很容易。

Vagrant Manager安装并运行后,您可以找到您的Vagrant配置列表,并且该列表当前处于活动状态。

OS X Taksbar中的Vagrant Manager IU phpMyAdmin

Vagrant还内置了phpMyAdmin,可从vvv.dev/database-admin/访问。 但是,我不是phpMyAdmin的粉丝。 除了界面可爱之外,在大型数据库中处理查询也很缓慢。 这就是我更喜欢使用本机应用程序(例如Sequel Pro或Windows的SQL Workbench)的原因。 但是,我们首先必须将应用程序连接到MySQL。

使用本机应用程序连接到MySQL

在这里,我正在使用Sequel Pro for OSX。但是,无论您使用什么应用程序,都可以使用连接到MySQL所需的凭据。 他们是一样的。

MySQL主机 : 127.0.0.1 MySQL用户名 : root MySQL密码 : root SSH主机 : local.wordpress.dev (也适用于在VVV中注册的任何域) SSH用户 : vagrant SSH密码 : vagrant

如果看到如下所示的警告,则可以将其忽略,只需单击“是”或“确定”继续。 我们仅连接到我们自己计算机上的虚拟机,因此无需担心任何事情。

连接后,我们可以看到我们站点的数据库。 现在,我们可以做一些事情,例如导入和导出数据库,或者可能执行一些SQL查询 。

下一步是什么?

如前所述,VVV附带了包括PHP CodeSniffer在内的一系列工具,可让您根据WordPress编码标准对项目执行代码审核。 我认为这是您应该做的事情,尤其是在项目启动之前。

但是,由于PHP CodeSniffer超出了本教程的范围,因此我整理了一些参考资料来帮助您入门。

WordPress编码标准系列 PHP CodeSniffer官方Wiki 包起来

我们已经设置和运行VVV并通过许多扩展对其进行了改进,已经走了很长一段路。 最终,在使用WordPress创建新的本地站点或测试环境时,它可以简化我们的工作流程,尽管可能需要一些时间来适应它。

WordPress的经济非常活跃。 有主题,插件,库和许多其他产品可帮助您构建站点和项目。 该平台的开源特性也使其成为一个很好的选择,您可以从中提高自己的编程技能。 无论如何,您都可以在Envato Marketplace中看到我们提供的所有内容。

希望本教程对Vagrant和VVV入门有帮助。

翻译自: https://code.tutsplus.com/tutorials/wordpress-development-with-vvv--cms-26322



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3